package com.course.component.auth;

import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.util.Set;

/**
 * @Copyright: Copyright (c)  林中小鸟  All rights reserved.
 * @author: moon
 * @date: 2022/7/20 10:03
 * @Description: **********************
 */
@Data
public class TokenBase<T> implements Serializable {

    @TableField(exist = false)
    private Long userID;

    @TableField(exist = false)
    private String token;
    /**
     * 登录时间
     */
    @TableField(exist = false)
    private Long loginTime;

    /**
     * 过期时间
     */
    @TableField(exist = false)
    private Long expireTime;

    /**
     * 登录IP地址
     */
    @TableField(exist = false)
    private String ipaddr;

    /**
     * 权限列表
     */
    @TableField(exist = false)
    private Set<String> permissions;

    /**
     * 角色列表
     */
    @TableField(exist = false)
    private Set<String> roles;

    /**
     * 用户信息
     */
    @TableField(exist = false)
    private T sysUser;

    /**
     * 菜单列表
     */
    @TableField(exist = false)
    private Set<T> menu;
}
